<?
/* Se asegura que el archivo es incluido por el index */
	defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );  
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Producto_Compuesto_exe( $this );
		
	class Producto_Compuesto_exe extends Exe
	{
		function Producto_Compuesto_exe( &$oModule )
			{
				$this->Exe( $oModule );
			}
		// MODIFICAR_UN_SUBPRODUCTO_DE_UNA_COMPOSION
		function update()
			{
				// Convierte a variables los datos del Formulario asociado a la accion
				$oForm = $this->oModule->loadClass( 'Producto_Compuesto_frm' );
				extract( $oForm->getFieldArray() );
				// Modifica el Registro Producto
					$this->oDatabase->update("gtProductoCompuesto",
									"nqProductoB", $nqProductoB,
									"WHERE",
									"ncProductoA", $ncProducto,
									"ncProductoB", $ncProductoB );
			}
		// AGREGAR_UNA_SUBPRODUCTO_A_UN_PRODUCTO_COMPUESTO
		function insert()
			{
				// Convierte a variables los datos del Formulario asociado a la accion
				$oForm = $this->oModule->loadClass( 'Producto_Compuesto_frm' );
				extract( $oForm->getFieldArray() );
				// Agrega Producto
					$this->oDatabase->insert("gtProductoCompuesto",
									"ncProductoA", $ncProducto,
									"nqProductoB", $nqProductoB,
									"ncProductoB", $ncProductoB );
				$oForm->reset();
			}
		// ELIMINAR_UN_SUBPRODUCTO_DE_UNA_COMPOSICION
		function delete()
			{
				$oncProductoA = getParam( 'ncProducto' );
				$oncProductoB = getParam( 'ncProductoB' );
				if ( $ncProductoA && $ncProductoB )
				{
					$this->oDatabase->delete( "gtProductoCompuesto", "ncProductoA", $ncProductoA, "ncProductoB", $ncProductoB );
				}
			}
	}
?>